package com.upeoe.shiro.chapter5.dao;

import com.upeoe.shiro.chapter5.entity.Role;

/**
 * @author ven_hxz
 * @create 2016-07-05 上午10:48
 */
public interface RoleDao {

    /**
     * 创建角色
     *
     * @param role 角色对象
     * @return 创建后的角色对象
     */
    Role createRole(Role role);

    /**
     * 删除角色
     *
     * @param roleId 角色ID
     */
    void deleteRole(Long roleId);

    /**
     * 添加 角色-权限 关系
     *
     * @param roleId        角色ID
     * @param permissionIds 权限IDs
     */
    void addRelationPermissions(Long roleId, Long... permissionIds);

    /**
     * 移除 角色-权限 关系
     *
     * @param roleId        角色ID
     * @param permissionIds 权限IDs
     */
    void removeRelationPermissions(Long roleId, Long... permissionIds);
}
